package tk.uodrad.apex.project.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import tk.uodrad.apex.project.pojo.dto.ParkingAddNewDTO;
import tk.uodrad.apex.project.pojo.dto.ParkingUpdateDTO;
import tk.uodrad.apex.project.pojo.dto.PeopleAddNewDTO;
import tk.uodrad.apex.project.pojo.dto.PeopleUpdateDTO;
import tk.uodrad.apex.project.pojo.entity.Parking;
import com.baomidou.mybatisplus.extension.service.IService;
import tk.uodrad.apex.project.pojo.entity.People;
import tk.uodrad.apex.project.pojo.vo.ParkingListVO;
import tk.uodrad.apex.project.pojo.vo.PeopleListVO;

/**
* @author uodrad
* @description 针对表【parking_management】的数据库操作Service
* @createDate 2023-04-08 12:22:09
*/
public interface ParkingService extends IService<Parking> {
    /**
     * 添加单个车位
     * @param parkingAddNewDTO 添加车位DTO
     */
    void save(ParkingAddNewDTO parkingAddNewDTO);

    /**
     * 根据ID修改车位
     * @param parkingUpdateDTO 修改车位DTO
     */
    void updateById(ParkingUpdateDTO parkingUpdateDTO);

    /**
     * 分页查询车位列表
     * @param pageNum 第几页
     * @param pageSize 每页多少条数据
     * @param communityCode 小区编号
     * @return IPage<People> 分页对象
     */
    IPage<ParkingListVO> list(Integer pageNum, Integer pageSize, String communityCode);

    Integer countParking();
}
